home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Nebula 2
/
Nebula Two.iso
/
SourceCode
/
Database
/
SimpleTableView-1
/
SimpleTableView.m
< prev
Wrap
Text File
|
1995-06-12
|
2KB
|
79 lines
// -------------------------------------------------------------------------------------
// SimpleTableView app
// This software is without warranty of any kind. Use at your own risk.
// -------------------------------------------------------------------------------------
#import <appkit/appkit.h>
#import <objc/objc.h>
#import <libc.h>
#import <stdlib.h>
#import <string.h>
#import <c.h>
#import <ctype.h>
#import <sys/param.h>
#import <sys/types.h>
#import <sys/time.h>
#import <sys/dir.h>
#import "SimpleTableView.h"
#import "DataEditor.h"
// -------------------------------------------------------------------------------------
@implementation SimpleTableView
// -------------------------------------------------------------------------------------
// menu actions
/* open table file */
- openTable:sender
{
id pOpen;
char fName[MAXPATHLEN+1], *dir, **files, *fTypes[] = { "simpleTbl", 0 };
/* build/display open panel */
pOpen = [OpenPanel new];
[pOpen setTitle:"Open Simple DataTable"];
[pOpen setPrompt:"File:"];
[pOpen setRequiredFileType:fTypes[0]];
[pOpen allowMultipleFiles:YES];
[pOpen setDirectory:pathToApp];
if (![pOpen runModalForTypes:fTypes]) return self;
/* open the list of selected files */
if (!(files = (char**)[pOpen filenames])) return self;
dir = (char*)[pOpen directory];
while (*files) {
sprintf(fName, "%s/%s", dir, *files++);
[[DataEditor alloc] initFromFile:fName];
}
return self;
}
/* terminate */
- terminate:sender
{
[DataEditor terminateAllEditors];
return [super terminate:sender];
}
// -------------------------------------------------------------------------------------
// application initialization
/* app did initialize */
- appDidInit:sender
{
char *p, path[MAXPATHLEN + 1];
if (NXArgv[0][0] == '/') strcpy(path, NXArgv[0]);
else {
getwd(path);
strcat(path, "/");
strcat(path, NXArgv[0]);
}
if ((p = rindex(path, '/')) && (p != path)) *p = 0;
pathToApp = NXCopyStringBuffer(path);
return self;
}
// -------------------------------------------------------------------------------------
@end